home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Atari Mega Archive 2
/
Atari Mega Archive CD - Volume 2.iso
/
8bit
/
cislib_b
/
setclk.src
< prev
next >
Wrap
Text File
|
1995-04-22
|
7KB
|
1 lines
0100 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;¢0110 ;¢0120 ; SETCLOCK UTILITY¢0130 ; by Jonathan Buckheit¢0140 ;¢0150 ; converted to Assembler¢0160 ; by Tracy Garrison¢0170 ; Analog user ID:2516¢0180 ;¢0190 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;¢0200 ;¢0210 ; EQUATES¢0220 ;¢0230 LOW = $FF¢0240 HIGH = $100¢0250 CIO = $E456¢0260 ICCOM = $342¢0270 ICBADR = $344¢0280 ICBLEN = $348¢0290 SCRNH = $349¢0300 ICAUX1 = $34A¢0310 COPN = 3¢0320 CGTXTR = 5¢0330 CPTXTR = 9¢0340 CCLOSE = 12¢0350 FILE0 = $00¢0360 FILE1 = $10¢0370 FILE2 = $20¢0380 PUTCHR = $B¢0390 ;¢0400 ; LINE 210 IN BASIC LISTING¢0410 ;¢0420 START = 8704¢0430 ;¢0440 ;¢0450 *= $2350¢0460 ;¢0470 ; LINE 230 IN BASIC LISTING¢0480 ; :OPEN EDITOR FOR READ¢0490 ; AND WRITE.¢0500 ;¢0510 BEGIN¢0520 LDX #FILE0¢0530 LDA #COPN¢0540 STA ICCOM,X¢0550 LDA #12¢0560 STA ICAUX1,X¢0570 LDA #EDITOR&LOW¢0580 STA ICBADR,X¢0590 LDA #EDITOR/HIGH¢0600 STA ICBADR+1,X¢0610 JSR CIO¢0620 ;¢0630 ; DISPLAY THE TITLE AND CREDIT¢0640 ;¢0650 DISTITLE¢0660 LDA #TITLE&LOW¢0670 STA ICBADR,X¢0680 LDA #TITLE/HIGH¢0690 STA ICBADR+1,X¢0700 JSR PRTLINE¢0710 ;¢0720 ; LINE 240 IN BASIC LISTING¢0730 ; :MAKE SURE COCK IS LOADED.¢0740 ;¢0750 LDA 743¢0760 CMP #64¢0770 BNE ERROR¢0780 LDA 744¢0790 CMP #35¢0800 BEQ OK¢0810 ;¢0820 ; IF CLOCK IS NOT LOADED THEN¢0830 ; PRINT THE ERROR MESSAGE AND¢0840 ; END¢0850 ;¢0860 ERROR¢0870 LDA #ERRMSG&LOW¢0880 STA ICBADR,X¢0890 LDA #ERRMSG/HIGH¢0900 STA ICBADR+1,X¢0910 JSR PRTLINE¢0920 RTS¢0930 ;¢0940 ; LINE 250 IN BASIC LISTING¢0950 ; :PRINT THE PROMP...¢0960 ; "ENTER HOURS: "¢0970 ; AND CHECK TO SEE IF¢0980 ; HOURS IS WITHIN THE¢0990 ; LIMITS.¢1000 ;¢1010 OK¢1020 HOURS¢1030 LDA #HOURMSG&LOW¢1040 STA ICBADR,X¢1050 LDA #HOURMSG/HIGH¢1060 STA ICBADR+1,X¢1070 LDA #12¢1080 STA ICBLEN,X¢1090 JSR PRTCHRS¢1100 JSR GETHEX¢1110 LDA BYTE¢1120 STA HOUR¢1130 CMP #1¢1140 BMI OK¢1150 CMP #19¢1160 BPL OK¢1170 ;¢1180 ; LINE 260 IN BASIC LISTING¢1190 ; :PRINT PROMP.....¢1200 ; "ENTER MINUTE: "¢1210 ; AND CHECK TO SEE IF¢1220 ; MINUTE IS WITHIN THE¢1230 ; LIMITS.¢1240 ;¢1250 MIN¢1260 LDA #MINMSG&LOW¢1270 STA ICBADR,X¢1280 LDA #MINMSG/HIGH¢1290 STA ICBADR+1,X¢1300 LDA #14¢1310 STA ICBLEN,X¢1320 JSR PRTCHRS¢1330 JSR GETHEX¢1340 LDA BYTE¢1350 STA MINUTE¢1360 CMP #0¢1370 BMI MIN¢1380 CMP #97¢1390 BPL MIN¢1400 ;¢1410 ; LINE 270 IN BASIC LISTING¢1420 ; :PRINT PROMPT...¢1430 ; "ENTER SECOND: "¢1440 ; AND CHECK TO SEE IF¢1450 ; SECOND IS WITHIN THE¢1460 ; LIMITS.¢1470 ;¢1480 SEC¢1490 LDA #SECMSG&LOW¢1500 STA ICBADR,X¢1510 LDA #SECMSG/HIGH¢1520 STA ICBADR+1,X¢1530 LDA #14¢1540 STA ICBLEN,X¢1550 JSR PRTCHRS¢1560 JSR GETHEX¢1570 LDA BYTE¢1580 STA SECOND¢1590 CMP #0¢1600 BMI SEC¢1610 CMP #97¢1620 BPL SEC¢1630 ;¢1640 ; LINE 280 IN BASIC LISTING¢1650 ; :PUT THE APPROPRIATE¢1660 ; VALUES INTO THE CLOCK¢1670 ; ROUTINE¢1680 ;¢1690 LDA HOUR¢1700 STA START+75¢1710 LDA MINUTE¢1720 STA START+76¢1730 LDA SECOND¢1740 STA START+77¢1750 LDA #60¢1760 STA START+78¢1770 LDA #0¢1780 STA START+79¢1790 STA START¢1800 ;¢1810 ; LINE 285 IN BASIC LISTING¢1820 ; :LEAVE SETCLOCK UTILITY¢1830 ;¢1840 RTS¢1850 ;¢1860 ;¢1870 ; LINE 290-310 IN BASIC LISTING¢1880 ; :GET INPUT AND CONVERT¢1890 ; IT TO THE APPROPRIATE¢1900 ; NUMBERS FOR THE CLOCK¢1910 ;¢1920 GETHEX¢1930 LDX #FILE0¢1940 LDA #BUFFER&LOW¢1950 STA ICBADR,X¢1960 LDA #BUFFER/HIGH¢1970 STA ICBADR+1,X¢1980 LDA BUFLEN¢1990 STA ICBLEN,X¢2000 LDA #0¢2010 STA ICBLEN+1,X¢2020 LDA #CGTXTR¢2030 STA ICCOM,X¢2040 JSR CIO¢2050 LDA BUFFER+1¢2060 CMP #155¢2070 BNE GET2¢2080 LDA BUFFER¢2090 STA BUFFER+1¢2100 LDA #$30¢2110 STA BUFFER¢2120 GET2 LDA BUFFER¢2130 SEC¢2140 SBC #48¢2150 STA B1¢2160 LDA BUFFER+1¢2170 SBC #48¢2180 STA B2¢2190 LDA B1¢2200 ;¢2210 ; MULTIPLY THE NUMBER IN B1*16¢2220 ;¢2230 ASL A¢2240 ASL A¢2250 ASL A¢2260 ASL A¢2270 CLC¢2280 ADC B2¢2290 STA BYTE¢2300 RTS¢2310 ;¢2320 ; ROUTINE TO PRINT MESSAGES THAT¢2330 ; END IN A CARRIAGE ROUTINE--¢2340 ; TITLE AND ERRMSG....¢2350 ;¢2360 PRTLINE LDX #FILE0¢2370 LDA #CPTXTR¢2380 STA ICCOM,X¢2390 LDA #$00¢2400 STA ICBLEN+1,X¢2410 LDA #$80¢2420 STA ICBLEN,X¢2430 JSR CIO¢2440 RTS¢2450 ;¢2460 ; ROUTINE TO PRINT THE PROMPTS¢2470 ; WITHOUT CARRIAGE RETURNS---¢2480 ; SO THE CURSOR IS POSITIONED¢2490 ; WRITE AFTER THE PROMPT.¢2500 ;¢2510 PRTCHRS LDX #FILE0¢2520 LDA #PUTCHR¢2530 STA ICCOM,X¢2540 LDA #0¢2550 STA ICBLEN+1,X¢2560 JSR CIO¢2570 RTS¢2580 MESSAGES¢2590 ;¢2600 TITLE .BYTE "} צדקáבכנביáΓ∙áט∩∈β⌠Φβ∈áא⌡πδΦσΘ⌠á",155¢2610 ERRMSG .BYTE "² IJקIJפחáבכנביáמנקáכנIJגדגáíííá",155¢2620 HOURMSG .BYTE "ENTER HOUR: "¢2630 MINMSG .BYTE "ENTER MINUTE: "¢2640 SECMSG .BYTE "ENTER SECOND: "¢2650 ;¢2660 HOUR .BYTE 0¢2670 MINUTE .BYTE 0¢2680 SECOND .BYTE 0¢2690 ;¢2700 B1 .BYTE 0¢2710 B2 .BYTE 0¢2720 BYTE .BYTE 0¢2730 EDITOR .BYTE "E:",0¢2740 ;¢2750 BUFLEN = 20¢2760 BUFFER *= *+BUFLEN¢2770 ;¢2780 ;¢2790 *= $2E0¢2800 .WORD BEGIN¢2810 .END¢HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH